package com.smartstate.IOC.service;

import com.smartstate.IOC.entity.DeviceCarePlan;
import com.smartstate.IOC.entity.EquipMent;
import com.smartstate.IOC.vo.EquipMentVidioVo;
import com.smartstate.IOC.vo.MoudelEquipmentVo;

import java.util.List;
import java.util.Map;

public interface EquipmentService extends ServiceBase<EquipMent> {

    Map<String, Integer> getMoudelEquipments() throws Exception;

    /**
     * 将指定模块下的所有子模块信息提取到 originalEquipments 数组中保存
     * @param targetModule
     */
    List<MoudelEquipmentVo> getTargetSubMoudels(MoudelEquipmentVo targetModule);

    MoudelEquipmentVo getMoudelEquipmentTree(String type);

    Map<String, Map<String, Object>> getOnlineStateEquipmets();

    List<DeviceCarePlan> getEquipmentCarePlans();

    List<Map<String,Object>> getTeamCountInfos();

    Map<String, Integer> getDeviceVidio();

    Map<String, List<Integer>> getDeviceObj();

    List<EquipMentVidioVo> getDeviceVidioTotal();

    Map<String, Object> getVidioEquipment(EquipMent equipMent);

    Map<String, String> getCameraChannelUrls();

    String getChannelUrlByCameraId(String cameraId);

    Map<String, Integer> getAlarmEvent();

    Map<String, Integer> getDeviceVideo();
}